﻿/*
 * Created by SharpDevelop.
 * User: lpelegrini
 * Date: 22/06/2013
 * Time: 18:24
 * 
 * To change this template use Tools | Options | Coding | Edit Standard Headers.
 */
using System;
using System.Collections.Generic;
using System.Data;

namespace Fazenda.DAL
{
	/// <summary>
	/// Description of Interface1.
	/// </summary>
	public interface IDBAccess<T>
	{
		int SaveRegistry(T registry); // - Salva um tipo e retorna um inteiro;
		bool UpdateRegistry(T registry);// - Atualiza um tipo e retorna true ou false;
		List<T> GetRegistry(T registry);// - Obtém uma lista de objetos do tipo a partir de um critério;
		List<T> GetAll();// - Obtém uma lista de todos os objetos do tipo;
		DataTable GetAllDataTable();// - Obtém uma lista de todos os objetos do tipo;
		T GetRegistryById(int id);// - Obtem um tipo pelo código;
		bool DeleteRegistry(T registry);// - Exclui um tipo retornando true ou false;
		bool DeleteRegistryById(int id);// - Exclui um tipo retornando true ou false;
	}
}
